package com.herch.system.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.herch.common.annotation.Excel;
import com.herch.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 设备信息管理对象 hq_equipment_info
 * 
 * @author ruoyi
 * @date 2023-12-14
 */
public class HqEquipmentInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 设备ID */
    private String equipmentId;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String equipmentName;

    /** 设备型号 */
    @Excel(name = "设备型号")
    private String equipmentSize;

    /** 地址编码 */
    @Excel(name = "地址编码")
    private String equipmentAddr;

    /** 通信方式标识，0是串口通信，1是TCP通信 */
    @Excel(name = "通信方式")
    private Long flag;

    /** IP */
    @Excel(name = "IP地址")
    private String equipmentIp;

    /** 通道数量 */
    @Excel(name = "通道数量")
    private Integer numOfCh;

    private String channelTem;

    /** RS485帧结构，用于发送请求温度数据命令 */
    @Excel(name = "RS485")
    private String rsFrameStru;

    /** 420帧结构，用于发送请求模拟量数据命令 */
    @Excel(name = "420帧结构")
    private String fzFrameStru;

    /** 创建者 */
    @Excel(name = "创建人")
    private String createBy;

    /** 创建时间 */
    @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    @Excel(name = "更新人")
    private String updateBy;

    /** 更新时间 */
    @Excel(name = "更新时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    public void setEquipmentId(String equipmentId) 
    {
        this.equipmentId = equipmentId;
    }

    public String getEquipmentId() 
    {
        return equipmentId;
    }
    public void setEquipmentName(String equipmentName) 
    {
        this.equipmentName = equipmentName;
    }

    public String getEquipmentName() 
    {
        return equipmentName;
    }
    public void setEquipmentAddr(String equipmentAddr) 
    {
        this.equipmentAddr = equipmentAddr;
    }
    public String getEquipmentSize() {
        return equipmentSize;
    }

    public void setEquipmentSize(String equipmentSize) {
        this.equipmentSize = equipmentSize;
    }

    public String getEquipmentAddr() 
    {
        return equipmentAddr;
    }
    public void setFlag(Long flag)
    {
        this.flag = flag;
    }

    public Long getFlag()
    {
        return flag;
    }
    public void setEquipmentIp(String equipmentIp)
    {
        this.equipmentIp = equipmentIp;
    }

    public String getEquipmentIp()
    {
        return equipmentIp;
    }
    public void setNumOfCh(Integer numOfCh)
    {
        this.numOfCh = numOfCh;
    }

    public Integer getNumOfCh()
    {
        return numOfCh;
    }
    public void setChannelTem(String channelTem) 
    {
        this.channelTem = channelTem;
    }

    public String getChannelTem() 
    {
        return channelTem;
    }

    public void setRsFrameStru(String rsFrameStru) 
    {
        this.rsFrameStru = rsFrameStru;
    }

    public String getRsFrameStru() 
    {
        return rsFrameStru;
    }
    public void setFzFrameStru(String fzFrameStru) 
    {
        this.fzFrameStru = fzFrameStru;
    }

    public String getFzFrameStru() 
    {
        return fzFrameStru;
    }

    @Override
    public String getCreateBy() {
        return createBy;
    }

    @Override
    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Override
    public String getUpdateBy() {
        return updateBy;
    }

    @Override
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    @Override
    public Date getUpdateTime() {
        return updateTime;
    }

    @Override
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("equipmentId", getEquipmentId())
            .append("equipmentName", getEquipmentName())
            .append("equipmentSize", getEquipmentSize())
            .append("equipmentAddr", getEquipmentAddr())
            .append("flag", getFlag())
            .append("equipmentIp", getEquipmentIp())
            .append("numOfCh", getNumOfCh())
            .append("channelTem", getChannelTem())
            .append("rsFrameStru", getRsFrameStru())
            .append("fzFrameStru", getFzFrameStru())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
